Compare commits

..

No commits in common. "b936d27445bceccaa83c1d47887fff6329a2bdec" and "f74b14c2039a5980b2e55cec360702150e070f6a" have entirely different histories.

View File

@ -238,13 +238,6 @@ class _AdminAmEditModalState extends State<AdminAmEditModal>
int? _capaciteMax() => _parseIntField(_capaciteCtrl);
/// True si plus aucune place d'accueil (enfants ≥ capacité max).
bool get _capacityFull {
final max = _capaciteMax();
if (max == null) return false;
return _children.length >= max;
}
int? _computedPlacesAvailable() => amExpectedPlacesAvailable(
maxChildren: _capaciteMax(),
childrenCount: _children.length,
@ -473,7 +466,7 @@ class _AdminAmEditModalState extends State<AdminAmEditModal>
}
Future<void> _attachChild() async {
if (_capacityFull || !mounted) return;
if (!mounted) return;
final selected = await AdminSelectEnfantModal.show(
context,
excludeIds: _children.map((c) => c.id).toSet(),
@ -752,7 +745,6 @@ class _AdminAmEditModalState extends State<AdminAmEditModal>
Widget _buildFooter() {
final isChildrenTab = _tabCtrl.index == 2;
final canAttachChild = !_saving && !_capacityFull;
return Row(
children: [
TextButton(
@ -761,16 +753,11 @@ class _AdminAmEditModalState extends State<AdminAmEditModal>
),
const Spacer(),
if (isChildrenTab)
Tooltip(
message: _capacityFull
? 'Capacité maximale atteinte'
: 'Rattacher un enfant',
child: TextButton.icon(
onPressed: canAttachChild ? _attachChild : null,
TextButton.icon(
onPressed: _attachChild,
icon: const Icon(Icons.link, size: 18),
label: const Text('Rattacher un enfant'),
),
),
if (isChildrenTab) const SizedBox(width: 12),
ElevatedButton(
style: ValidationModalTheme.primaryElevatedStyle,