← back to Animate Museum Posts

public/callback.html

54 lines

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Museum Art Bot - Authentication Callback</title>
    <style>
        body {
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
            background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
            color: white;
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 100vh;
            margin: 0;
        }
        .container {
            text-align: center;
            padding: 2rem;
            background: rgba(255,255,255,0.1);
            border-radius: 10px;
            backdrop-filter: blur(10px);
        }
        h1 { margin-bottom: 1rem; }
        .success { color: #4ade80; }
        .error { color: #f87171; }
    </style>
</head>
<body>
    <div class="container">
        <h1>🎨 Museum Art Bot</h1>
        <div id="status">
            <h2 class="success">✓ Authentication Successful!</h2>
            <p>You have successfully authorized the Museum Art Bot.</p>
            <p>You can close this window and return to your application.</p>
        </div>
        <script>
            // Handle OAuth callback
            const params = new URLSearchParams(window.location.search);
            if (params.get('error')) {
                document.getElementById('status').innerHTML = `
                    <h2 class="error">✗ Authentication Failed</h2>
                    <p>Error: ${params.get('error_description') || params.get('error')}</p>
                `;
            }
            // Log tokens for manual configuration if needed
            if (params.get('oauth_token')) {
                console.log('OAuth Token received:', params.get('oauth_token'));
            }
        </script>
    </div>
</body>
</html>