Replace native dialogs with app modals for Events link and unlink.
Deploy Ladill Meet / deploy (push) Successful in 49s

Link opens an in-page modal on conference and webinar show pages; unlink uses the shared confirm-dialog component.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-04 22:39:02 +00:00
co-authored by Cursor
parent d0e68f15c7
commit 14e7ae9557
8 changed files with 222 additions and 72 deletions
+51
View File
@@ -2008,6 +2008,57 @@ class MeetWebTest extends TestCase
->assertDontSee('/qr-codes/create', false);
}
public function test_conference_events_link_uses_app_modals_not_native_confirm(): void
{
config([
'meet.events_api_url' => 'https://events.test/api/service/v1',
'meet.events_api_key' => 'test-events-key',
]);
Http::fake([
'https://events.test/api/service/v1/events*' => Http::response(['events' => []]),
]);
$room = Room::create([
'owner_ref' => $this->user->public_id,
'organization_id' => $this->organization->id,
'host_user_ref' => $this->user->public_id,
'title' => 'Leadership conference',
'type' => 'town_hall',
'status' => 'scheduled',
'scheduled_at' => now()->addDay(),
'timezone' => 'UTC',
'settings' => config('meet.default_settings'),
'source' => [
'app' => 'events',
'entity_type' => 'virtual_session',
'entity_id' => 'vs-1',
'event_id' => '42',
'event_title' => 'Summit',
],
]);
$this->actingAs($this->user)
->get(route('meet.conferences.show', $room))
->assertOk()
->assertSee('Remove Events link?', false)
->assertSee('data-modal-name="events-unlink-'.$room->uuid.'"', false)
->assertDontSee("confirm('Remove the Events link?", false);
$room->update(['source' => null]);
$this->actingAs($this->user)
->get(route('meet.conferences.show', $room))
->assertOk()
->assertSee('open-modal', false)
->assertSee('data-modal-name="events-link-'.$room->uuid.'"', false)
->assertSee('Link to Ladill Events', false);
$this->actingAs($this->user)
->get(route('meet.events.link', $room))
->assertRedirect(route('meet.conferences.show', $room));
}
public function test_afia_chat_returns_reply_when_ai_configured(): void
{
config([