Fix platform session ping loop and harden meeting detail timezone display.
Deploy Ladill Meet / deploy (push) Successful in 38s
Deploy Ladill Meet / deploy (push) Successful in 38s
Defer inconclusive auth ping 401s instead of clearing SSO sessions; add client keepalive and safe timezone fallback on room pages. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -35,12 +35,12 @@ class EnsurePlatformSession
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
$cookieHeader = (string) $request->headers->get('Cookie', '');
|
||||
if ($cookieHeader === '') {
|
||||
return $this->clearAppSession($request);
|
||||
}
|
||||
|
||||
try {
|
||||
$cookieHeader = (string) $request->headers->get('Cookie', '');
|
||||
if ($cookieHeader === '') {
|
||||
return $this->deferPlatformCheck($request, $next);
|
||||
}
|
||||
|
||||
$response = Http::withHeaders(['Cookie' => $cookieHeader])
|
||||
->timeout(3)
|
||||
->connectTimeout(2)
|
||||
@@ -50,7 +50,7 @@ class EnsurePlatformSession
|
||||
}
|
||||
|
||||
if ($response->status() === 401) {
|
||||
return $this->clearAppSession($request);
|
||||
return $this->deferPlatformCheck($request, $next);
|
||||
}
|
||||
|
||||
if ($response->successful()) {
|
||||
@@ -60,6 +60,13 @@ class EnsurePlatformSession
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
private function deferPlatformCheck(Request $request, Closure $next): Response
|
||||
{
|
||||
$request->session()->put('platform_session_verified_at', time());
|
||||
|
||||
return $next($request);
|
||||
}
|
||||
|
||||
private function clearAppSession(Request $request): Response
|
||||
{
|
||||
Auth::logout();
|
||||
|
||||
@@ -151,6 +151,19 @@ class Room extends Model
|
||||
return data_get($this->settings, $key, data_get(config('meet.default_settings'), $key, $default));
|
||||
}
|
||||
|
||||
public function safeTimezone(): string
|
||||
{
|
||||
$timezone = (string) ($this->timezone ?: 'UTC');
|
||||
|
||||
try {
|
||||
new \DateTimeZone($timezone);
|
||||
|
||||
return $timezone;
|
||||
} catch (\Throwable) {
|
||||
return 'UTC';
|
||||
}
|
||||
}
|
||||
|
||||
public function isLive(): bool
|
||||
{
|
||||
return $this->status === 'live';
|
||||
|
||||
Reference in New Issue
Block a user