mirror of
https://codeberg.org/PostERG/xamxam.git
synced 2026-06-25 16:19:19 +02:00
Reintroduce TFE duration metadata: DB columns, form fields, controllers, views, and migration
Add 'unsafe-eval' to CSP script-src directives (htmx requires Function())
This commit is contained in:
@@ -541,7 +541,7 @@ th.admin-ap-col {
|
||||
|
||||
.admin-body main > section[aria-labelledby^="settings-"] fieldset legend {
|
||||
padding: 0;
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.04em;
|
||||
text-transform: uppercase;
|
||||
color: var(--text-secondary);
|
||||
@@ -1303,7 +1303,7 @@ th.admin-ap-col {
|
||||
flex: 1 1 260px;
|
||||
}
|
||||
.param-smtp-test-row label {
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
margin-bottom: var(--space-2xs);
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
@@ -1909,7 +1909,7 @@ th.admin-ap-col {
|
||||
.fhb-edit-label {
|
||||
display: block;
|
||||
font-size: var(--step--2);
|
||||
font-weight: 500;
|
||||
font-weight: 400;
|
||||
color: var(--text-primary);
|
||||
margin-bottom: var(--space-3xs);
|
||||
}
|
||||
|
||||
@@ -13,23 +13,32 @@ details > summary::-webkit-details-marker {
|
||||
}
|
||||
|
||||
details {
|
||||
padding: var(--space-s);
|
||||
border: 1px solid var(--border-color);
|
||||
border-radius: var(--radius, 6px);
|
||||
background: var(--bg-secondary, var(--surface));
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
details[open] {
|
||||
padding-bottom: var(--space-s);
|
||||
}
|
||||
|
||||
details > :not(summary) {
|
||||
margin-left: var(--space-s);
|
||||
margin-right: var(--space-s);
|
||||
}
|
||||
|
||||
summary {
|
||||
font-family: var(--font-display);
|
||||
font-weight: 600;
|
||||
text-decoration: none;
|
||||
color: var(--accent-secondary);
|
||||
transition: color 0.15s;
|
||||
|
||||
svg {
|
||||
fill: var(--accent-secondary);
|
||||
vertical-align: text-bottom;
|
||||
height: 1.4em;
|
||||
}
|
||||
color: var(--text-primary);
|
||||
transition: color 0.15s, background 0.15s;
|
||||
padding: var(--space-s);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
summary:hover {
|
||||
color: var(--accent-primary);
|
||||
background: var(--hover-bg, rgba(0, 0, 0, 0.03));
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
label {
|
||||
display: block;
|
||||
margin-bottom: var(--space-3xs);
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
/* ── Text inputs, selects, textareas ────────────────────────────────── */
|
||||
@@ -95,7 +96,7 @@ fieldset > *:not(:last-child) { margin-bottom: var(--space-xs); }
|
||||
|
||||
legend {
|
||||
font-size: var(--step--1);
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.04em;
|
||||
text-transform: uppercase;
|
||||
color: var(--text-secondary);
|
||||
|
||||
@@ -242,6 +242,6 @@
|
||||
|
||||
.admin-dialog label {
|
||||
display: block;
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
margin-bottom: var(--space-3xs);
|
||||
}
|
||||
|
||||
@@ -232,3 +232,68 @@
|
||||
.file-browser-file .file-browser-select-btn:hover {
|
||||
background: var(--bg-secondary);
|
||||
}
|
||||
|
||||
/* ── Full-page editor (contenus-edit overtype) ─────────────────────── */
|
||||
|
||||
/* Make the main content area a flex column so the form fills remaining height */
|
||||
.admin-body .full-editor-page {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.admin-form--full-editor {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
}
|
||||
|
||||
.admin-form--full-editor #editor {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.admin-form--full-editor #editor .n-container {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
}
|
||||
|
||||
.admin-form--full-editor #editor .n-wrapper {
|
||||
flex: 1;
|
||||
min-height: 0;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.admin-form--full-editor #editor .n-input {
|
||||
height: 100% !important;
|
||||
overflow-y: auto !important;
|
||||
}
|
||||
|
||||
.admin-form--full-editor #editor .n-preview {
|
||||
height: 100% !important;
|
||||
overflow-y: auto !important;
|
||||
}
|
||||
|
||||
.full-editor-toolbar {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: var(--space-s);
|
||||
padding-bottom: var(--space-s);
|
||||
border-bottom: 1px solid var(--border-primary);
|
||||
margin-bottom: var(--space-s);
|
||||
flex-shrink: 0;
|
||||
}
|
||||
|
||||
.full-editor-label {
|
||||
font-size: var(--step--1);
|
||||
font-weight: 600;
|
||||
color: var(--text-secondary);
|
||||
}
|
||||
|
||||
.full-editor-toolbar .btn--primary {
|
||||
margin-left: auto;
|
||||
}
|
||||
|
||||
@@ -68,7 +68,7 @@
|
||||
> label,
|
||||
.admin-form div:has(select:required) > label,
|
||||
.admin-form div:has(textarea:required) > label {
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
/* Asterisk on required field labels */
|
||||
@@ -161,6 +161,19 @@
|
||||
gap: var(--space-3xs);
|
||||
}
|
||||
|
||||
.admin-form-group--inline {
|
||||
flex-direction: row;
|
||||
align-items: end;
|
||||
gap: var(--space-xs);
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
|
||||
.admin-form-group--inline > div {
|
||||
display: flex;
|
||||
flex-direction: column;
|
||||
gap: var(--space-3xs);
|
||||
}
|
||||
|
||||
/* ── Jury fieldset ──────────────────────────────────────────────────────── */
|
||||
|
||||
/* ── Website-URL inline fieldset (shown/hidden via HTMX) ────────────────── */
|
||||
@@ -178,7 +191,7 @@
|
||||
.admin-body fieldset fieldset.admin-jury-lecteurs > legend,
|
||||
.student-body fieldset fieldset.admin-jury-lecteurs > legend {
|
||||
font-size: var(--step--2);
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
letter-spacing: 0.03em;
|
||||
text-transform: uppercase;
|
||||
color: var(--text-tertiary);
|
||||
@@ -845,7 +858,7 @@
|
||||
|
||||
.retry-email-form label {
|
||||
font-size: var(--step--1);
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
.retry-email-form input[type="email"] {
|
||||
@@ -1207,7 +1220,7 @@ legend {
|
||||
}
|
||||
|
||||
.licence-options-fieldset legend {
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
font-size: var(--step--1);
|
||||
color: var(--text-secondary);
|
||||
padding: 0 var(--space-2xs);
|
||||
@@ -1227,7 +1240,7 @@ legend {
|
||||
.admin-form > div:not(.admin-form-footer) > label,
|
||||
.admin-form > div:not(.admin-form-footer) > span.admin-row-label {
|
||||
padding-top: 0;
|
||||
font-weight: 500;
|
||||
font-weight: 400;
|
||||
}
|
||||
|
||||
/* Labels inside fieldsets (checkbox/radio groups) */
|
||||
|
||||
@@ -11,16 +11,16 @@
|
||||
}
|
||||
|
||||
/* ---- 6-column index layout ---- */
|
||||
/* Column fractions: years=0.4 ap=1 or=1.2 fi=0.7 students=1 kw=1 */
|
||||
/* Equal-width columns except Années (years) = narrower */
|
||||
.repertoire-index {
|
||||
display: grid;
|
||||
grid-template-columns:
|
||||
minmax(3rem, 0.4fr)
|
||||
minmax(12rem, 1.4fr)
|
||||
minmax(9rem, 0.8fr)
|
||||
minmax(7rem, 0.8fr)
|
||||
minmax(8rem, 0.7fr)
|
||||
minmax(7rem, 1fr);
|
||||
minmax(3rem, 0.45fr)
|
||||
minmax(12rem, 1fr)
|
||||
minmax(9rem, 1fr)
|
||||
minmax(7rem, 1fr)
|
||||
minmax(8rem, 1fr)
|
||||
minmax(min-content, 1fr);
|
||||
grid-template-rows: auto 1fr;
|
||||
gap: var(--space-s);
|
||||
justify-content: space-between;
|
||||
@@ -78,14 +78,14 @@
|
||||
.repertoire-col > h2 {
|
||||
grid-row: 1;
|
||||
font-family: var(--font-display);
|
||||
font-size: var(--step-0);
|
||||
font-size: var(--step--1);
|
||||
letter-spacing: 0.12em;
|
||||
text-transform: uppercase;
|
||||
color: var(--text-secondary);
|
||||
color: var(--text-primary);
|
||||
font-weight: 398;
|
||||
margin: 0;
|
||||
padding: var(--space-xs) var(--space-2xs) var(--space-3xs);
|
||||
border-bottom: 1px solid var(--border-secondary);
|
||||
padding: var(--space-xs) 0 var(--space-3xs) 0;
|
||||
border-bottom: 1px solid var(--text-primary);
|
||||
align-self: end;
|
||||
hyphens: manual;
|
||||
word-break: normal;
|
||||
@@ -96,7 +96,7 @@
|
||||
grid-row: 2;
|
||||
overflow-y: auto;
|
||||
overflow-x: hidden;
|
||||
padding: var(--space-2xs) var(--space-2xs) var(--space-l);
|
||||
padding: var(--space-2xs) 0 var(--space-l) 0;
|
||||
}
|
||||
|
||||
/* Strip list chrome inside repertoire columns */
|
||||
|
||||
@@ -255,7 +255,7 @@
|
||||
|
||||
.tfe-access-request-form label {
|
||||
font-size: var(--step--1);
|
||||
font-weight: 600;
|
||||
font-weight: 400;
|
||||
color: var(--text-primary);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user