77 lines
2.1 KiB
HTML
77 lines
2.1 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
|
<title>Sending data...</title>
|
|
</head>
|
|
<body>
|
|
<p>Sending data...</p>
|
|
|
|
<script>
|
|
if (localStorage.getItem("DONOTSHARE-secretkey") === null) {
|
|
window.location.replace("/login" + window.location.search)
|
|
document.body.innerHTML = "Redirecting..."
|
|
throw new Error();
|
|
}
|
|
|
|
function oauth() {
|
|
const urlParams = new URLSearchParams(window.location.search);
|
|
|
|
// Get URL parameters
|
|
if (urlParams.has('client_id')) {
|
|
var client_id = urlParams.get('client_id');
|
|
var redirect_uri = urlParams.get('redirect_uri');
|
|
var response_type = urlParams.get('response_type');
|
|
} else {
|
|
window.location.replace("/dashboard");
|
|
}
|
|
|
|
if (urlParams.has('state')) {
|
|
var state = urlParams.get('state');
|
|
}
|
|
|
|
if (urlParams.has('code_challenge')) {
|
|
code = urlParams.get('code_challenge');
|
|
codemethod = urlParams.get('code_challenge_method');
|
|
} else {
|
|
code = "none"
|
|
codemethod = "none"
|
|
}
|
|
|
|
// Get DONOTSHARE-secretkey from localStorage
|
|
var secret_key = localStorage.getItem("DONOTSHARE-secretkey");
|
|
|
|
// Create data object to send
|
|
var data = {
|
|
appId: client_id,
|
|
secretKey: secret_key,
|
|
code: code,
|
|
codemethod: codemethod
|
|
};
|
|
|
|
// Send data to example.org using POST request
|
|
fetch("https://auth.hectabit.org/api/auth", {
|
|
method: "POST",
|
|
headers: {
|
|
"Content-Type": "application/json"
|
|
},
|
|
body: JSON.stringify(data)
|
|
})
|
|
.then(response => {
|
|
async function doStuff() {
|
|
let code = await response.text()
|
|
console.log(code)
|
|
window.location.replace(redirect_uri + "?code=" + code + "&state=" + state)
|
|
}
|
|
doStuff()
|
|
})
|
|
.catch(error => {
|
|
alert("Error sending data: " + error.message);
|
|
});
|
|
}
|
|
oauth()
|
|
</script>
|
|
</body>
|
|
</html>
|