里、只是视觉上折叠 —— 少了哪个字段都会静默丢数据。 * * ⚠️ 同行的人:活动上登记的这份名单**仍然有用**(参与人 = 活动登记 ∪ 各段旅程成员)。 * 但既然活动现在"没有时间也没有地点",多数人会直接在每段旅程里填成员; * 所以它退到折叠区,默认不占地方。 */ $isEdit = !empty($t); $canWrite = \App\Auth::canWrite(); $selIds = []; if ($isEdit) { foreach ((array)($t['attendees'] ?? []) as $a) { $selIds[] = (int)$a['id']; } } else { $selIds = array_map('intval', (array)($presetAttendees ?? [])); } $cvSlot = \App\ImageSlot::get('cover') ?: ['ratio' => '16:9', 'w' => 1600, 'h' => 900, 'label' => '题图', 'hint' => '']; $hasCover = $isEdit && !empty($t['cover_key']); // 折叠区里"有没有填过东西" —— 有就默认展开,别让改过的人还要再点一次 $moreOpen = $isEdit && (trim((string)($t['note'] ?? '')) !== '' || (string)($t['is_public'] ?? '1') === '0' || $selIds); ?>