File size: 1,230 Bytes
6bcb42f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Authenticating</title>
    </head>
    <body>
        <p>Please wait...</p>
        <script>
            const opener = window.opener || window.parent;
            if (!opener) {
                throw new Error('No parent window');
            }
            
            setTimeout(() => {
                // scratch auth adds the private code weirdly so just account for it
                const search = '?t=1' + location.search.replace(/\?/gmi, '&');
                const searchParams = new URLSearchParams(search);
                const privateCode = searchParams.get("privateCode");
                const openerLocation = searchParams.get("openLocation");

                function post(data) {
                    opener.postMessage(
                        {
                            scratchauthd1: data,
                        },
                        openerLocation
                    );
                }

                post({
                    pv: privateCode
                });
            }, 500);
        </script>
    </body>
</html>