Gestion evenements + cadres par event + fix cadre paysage + dossier non-imprimees

- CRUD evenements : creer, activer, editer, supprimer dans panneau admin
- Cadres specifiques par evenement (aucun/disponible/defaut/impose)
- Fix cadre paysage deformé : rotation auto si orientation ne correspond pas
- Photos non imprimees vont dans sous-dossier "non_imprimees" (USB/FTP)
  au lieu d'etre ignorees ; booth recoit toujours toutes les photos

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-23 00:16:35 +02:00
parent 545d8cd6ad
commit 9ce8fc0e55
9 changed files with 621 additions and 60 deletions

View File

@@ -1332,6 +1332,76 @@ h3 {
/* --- Fin cadres impression --- */
/* --- Evenements admin --- */
.event-item {
display: flex;
justify-content: space-between;
align-items: center;
padding: 0.6rem 0.8rem;
margin-bottom: 0.4rem;
background: rgba(255,255,255,0.04);
border-radius: 8px;
border: 1px solid rgba(255,255,255,0.08);
}
.event-item.event-actif {
border-color: var(--primaire);
background: rgba(233,30,99,0.08);
}
.event-nom { font-weight: 500; }
.event-actions { display: flex; gap: 0.3rem; align-items: center; }
.badge-actif {
background: var(--primaire);
color: #fff;
padding: 0.2rem 0.6rem;
border-radius: 12px;
font-size: 0.75rem;
font-weight: 600;
}
.cadre-event-section { margin-bottom: 1.2rem; }
.cadres-event-grille {
display: flex;
gap: 0.5rem;
flex-wrap: wrap;
margin: 0.5rem 0;
}
.cadre-event-item {
position: relative;
width: 90px;
text-align: center;
cursor: pointer;
padding: 0.3rem;
border: 2px solid transparent;
border-radius: 8px;
}
.cadre-event-item.cadre-selectionne {
border-color: var(--primaire);
background: rgba(233,30,99,0.1);
}
.cadre-event-item img {
width: 80px;
height: 80px;
object-fit: contain;
border-radius: 4px;
}
.cadre-event-item span {
display: block;
font-size: 0.7rem;
margin-top: 0.2rem;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.cadre-event-item .btn-icone {
position: absolute;
top: -4px;
right: -4px;
width: 20px;
height: 20px;
font-size: 0.6rem;
line-height: 20px;
padding: 0;
}
/* --- Choix cadre avant capture --- */
#ecran-cadre-choix {
display: flex;