<!DOCTYPE html>
<html>
<head>
    <title>SSO Login</title>
    <script>
        function submitTicket() {
            var myWebLoginUrl = 'https://10.3.10.170:9088/sso.html';
            var ticket = getParameterByName('ticket');
            if (!ticket) {
                window.location.href = 'http://10.5.14.103:27080/sso/login?service='+myWebLoginUrl ;
                return;
            }

            var url = '/api/cloud-user-center/anonymous/ssoTicket';
            var params = 'ticket=' + ticket + '&myWebLoginUrl=' + encodeURIComponent(myWebLoginUrl);

            var xhr = new XMLHttpRequest();
            xhr.open('POST', url, true);
            xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
            xhr.onreadystatechange = function () {
                if (xhr.readyState == 4) {
                    if (xhr.status == 200) {
                        var response = JSON.parse(xhr.responseText);
                        if (response.data) {
                            sessionStorage.setItem('user', JSON.stringify(response.data));
                            sessionStorage.setItem('token', 'Bearer '+response.data.token);
                            window.location.href = 'https://10.3.10.170:9088/#/main';
                        } else {
                            alert('Authentication failed!');
                        }
                    } else {
                        alert('Failed to communicate with server!');
                    }
                }
            };
            xhr.send(params);
        }

        // Function to get URL parameter by name
        function getParameterByName(name, url) {
            if (!url) url = window.location.href;
            name = name.replace(/[\[\]]/g, '\\$&');
            var regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)'),
                results = regex.exec(url);
            if (!results) return null;
            if (!results[2]) return '';
            return decodeURIComponent(results[2].replace(/\+/g, ' '));
        }

        window.onload = submitTicket;
    </script>
</head>
<body>
<h1>Single Sign-On Processing...</h1>
</body>
</html>