Keep the app subdomain visible during Ladill SSO login and logout.
Deploy Ladill QR Plus / deploy (push) Successful in 30s

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
isaacclad
2026-06-09 12:15:48 +00:00
co-authored by Cursor
parent 986c7a81d9
commit cd3ba1f334
5 changed files with 183 additions and 23 deletions
@@ -0,0 +1,26 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Signing out…</title>
@include('partials.favicon')
<meta name="robots" content="noindex">
<style>
body { font-family: system-ui, sans-serif; display: flex; min-height: 100vh; align-items: center; justify-content: center; margin: 0; background: #f8fafc; color: #334155; }
</style>
</head>
<body>
<p>Signing you out of Ladill…</p>
<iframe src="{{ $hubUrl }}" hidden width="0" height="0" title=""></iframe>
<script>
window.addEventListener('message', function (event) {
if (event.origin !== @json($authOrigin)) return;
if (event.data && event.data.type === 'ladill:logout:done' && event.data.return) {
window.location.replace(event.data.return);
}
});
setTimeout(function () { window.location.replace(@json($return)); }, 5000);
</script>
</body>
</html>
@@ -0,0 +1,31 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Signing in…</title>
<meta name="robots" content="noindex">
</head>
<body>
<script>
(function () {
var intended = @json($intended);
var appOrigin = @json($appOrigin);
@if ($error)
if (window.opener) {
window.opener.postMessage({ type: 'ladill:sso:error' }, appOrigin);
window.close();
} else {
window.location.replace(@json(route('sso.connect', ['redirect' => $intended, 'interactive' => 1, 'fallback' => 1])));
}
@else
if (window.opener) {
window.opener.postMessage({ type: 'ladill:sso:success', return: intended }, appOrigin);
window.close();
} else {
window.location.replace(intended);
}
@endif
})();
</script>
</body>
</html>
@@ -0,0 +1,38 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Signing in…</title>
@include('partials.favicon')
<meta name="robots" content="noindex">
<style>
body { font-family: system-ui, sans-serif; display: flex; min-height: 100vh; align-items: center; justify-content: center; margin: 0; background: #f8fafc; color: #334155; }
</style>
</head>
<body>
<p>Signing you in with Ladill…</p>
<script>
(function () {
var intended = @json($intended);
var authorizeUrl = @json($authorizeUrl);
var fallbackUrl = @json($fallbackUrl);
window.addEventListener('message', function (event) {
if (event.origin !== window.location.origin) return;
if (!event.data) return;
if (event.data.type === 'ladill:sso:success') {
window.location.replace(event.data.return || intended);
} else if (event.data.type === 'ladill:sso:error') {
window.location.replace(fallbackUrl);
}
});
var popup = window.open(authorizeUrl, 'ladill_sso', 'width=520,height=720');
if (!popup) {
window.location.replace(fallbackUrl);
}
})();
</script>
</body>
</html>