Remove meeting templates and show Events programme on Meet rooms.
Deploy Ladill Meet / deploy (push) Successful in 42s

Templates duplicated create-form settings without edit/delete flows; drop the feature and table. Conference and webinar pages render synced programme snapshots and link back to Ladill Events.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-07-01 22:31:03 +00:00
co-authored by Cursor
parent c108514b27
commit aed7094fed
25 changed files with 152 additions and 336 deletions
@@ -5,7 +5,6 @@ namespace App\Http\Controllers\Meet;
use App\Http\Controllers\Controller;
use App\Http\Controllers\Meet\Concerns\ScopesToAccount;
use App\Models\Room;
use App\Models\Template;
use App\Services\Meet\AttendanceService;
use App\Services\Meet\AvailabilityService;
use App\Services\Meet\CalendarService;
@@ -14,7 +13,6 @@ use App\Services\Meet\InvitationService;
use App\Services\Meet\RecurringMeetingService;
use App\Services\Meet\RoomService;
use App\Services\Meet\SessionService;
use App\Services\Meet\TemplateService;
use chillerlan\QRCode\QRCode;
use chillerlan\QRCode\QROptions;
use Illuminate\Http\RedirectResponse;
@@ -29,7 +27,6 @@ class RoomController extends Controller
public function __construct(
protected RoomService $rooms,
protected SessionService $sessions,
protected TemplateService $templates,
protected RecurringMeetingService $recurring,
protected InvitationService $invitations,
protected CalendarService $calendar,
@@ -58,14 +55,8 @@ class RoomController extends Controller
$this->authorizeAbility($request, 'meetings.create');
$organization = $this->organization($request);
$templates = Template::owned($this->ownerRef($request))
->where('organization_id', $organization->id)
->orderBy('name')
->get();
return view('meet.rooms.create', [
'organization' => $organization,
'templates' => $templates,
'timezones' => timezone_identifiers_list(),
'recurrenceRules' => config('meet.recurrence_rules'),
'defaultSettings' => config('meet.default_settings'),
@@ -85,7 +76,6 @@ class RoomController extends Controller
'duration_minutes' => ['nullable', 'integer', 'min:15', 'max:480'],
'timezone' => ['nullable', 'timezone'],
'passcode' => ['nullable', 'string', 'max:20'],
'template_id' => ['nullable', 'integer', 'exists:meet_templates,id'],
'recurrence_rule' => ['nullable', 'string', 'in:'.implode(',', array_keys(config('meet.recurrence_rules')))],
'recurrence_interval' => ['nullable', 'integer', 'min:1', 'max:12'],
'recurrence_until' => ['nullable', 'date'],
@@ -113,11 +103,6 @@ class RoomController extends Controller
'timezone' => $validated['timezone'] ?? $organization->timezone,
]);
if (! empty($validated['template_id'])) {
$template = Template::findOrFail($validated['template_id']);
$data = $this->templates->applyToRoomData($template, $data);
}
$isInstant = empty($validated['scheduled_at']);
if (! empty($validated['recurrence_rule']) && ! $isInstant) {