Files
zoff/server/public/assets/js/callback.js
Kasper Rynning-Tønnesen 03f68d3131 Catch for function not existing
2018-10-23 12:03:28 +02:00

43 lines
1.7 KiB
JavaScript
Executable File

window.addEventListener("load", function() {
var query = getQueryHash(window.location.hash);
var redirect = window.location.protocol + "//" + window.location.hostname + "/api/oauth";
var client_id;
var response;
var scope;
if(query.spotify) {
client_id = "b934ecdd173648f5bcd38738af529d58";
response = "token";
scope = "playlist-read-private ugc-image-upload playlist-read-collaborative user-read-private playlist-modify-public playlist-modify-private";
state = query.nonce;
window.location.href = "https://accounts.spotify.com/authorize?client_id=" + client_id + "&scope=" + scope + "&show_dialog=false&response_type=" + response + "&redirect_uri=" + redirect + "&state=" + state;
} else if (query.youtube) {
client_id = "944988770273-butsmlr1aotlsskk8lmgvh0etqqekigf.apps.googleusercontent.com";
response = "token";
scope = "https://www.googleapis.com/auth/youtube";
state = query.nonce;
//window.opener.callback(query);
window.location.href = "https://accounts.google.com/o/oauth2/v2/auth?client_id=" + client_id + "&response_type=" + response + "&state=" + state + "&redirect_uri=" + redirect + "&scope=" + scope;
} else {
var query_parameters = getQueryHash(window.location.hash);
try {
window.opener.callback(query_parameters);
} catch(e) {}
}
});
function getQueryHash(url) {
var temp_arr = url.substring(1).split("&");
var done_obj = {};
var splitted;
for(var i in temp_arr) {
splitted = temp_arr[i].split("=");
if(splitted.length == 2) {
done_obj[splitted[0]] = splitted[1];
}
}
return done_obj;
}