import React from 'react' /** * Modal: organisatorische Trainer-Zuweisung (Leitung + Co) für eine bestehende Einheit. */ export default function TrainingPlanningTrainerAssignModal({ open, unit, leadTrainerProfileId, onLeadChange, sessionAssistantsInherit, onSessionAssistantsInheritChange, sessionAssistantProfileIds, onCoTrainerToggle, clubDirectory, coTrainerOptions, saving, onBackdropRequestClose, onCancel, onSave, }) { if (!open || !unit) return null return (
{ if (!saving) onBackdropRequestClose() }} >
e.stopPropagation()} style={{ background: 'var(--surface)', borderRadius: '12px', padding: 'clamp(14px, 3vw, 1.75rem)', maxWidth: 'min(460px, 100%)', width: '100%', maxHeight: '90vh', overflowY: 'auto', boxSizing: 'border-box', }} >

Trainer zuweisen (organisatorisch)

{(unit.planned_date || '').toString().slice(0, 10)} {unit.planned_time_start ? ` · ${String(unit.planned_time_start).slice(0, 5)}` : ''} {(unit.group_name || '').trim() ? ` · ${(unit.group_name || '').trim()}` : null}

{!sessionAssistantsInherit ? (
{coTrainerOptions.map((m) => { const mid = typeof m.id === 'number' ? m.id : parseInt(String(m.id), 10) const labelText = `${(m.name || '').trim() || m.email || `Profil ${mid}`}` const isOn = Number.isFinite(mid) && sessionAssistantProfileIds.includes(mid) return ( ) })}
) : null} {!clubDirectory.length ? (

Mitgliederverzeichnis konnte nicht geladen werden.

) : null}
) }