diff --git a/chrome/manifest.json b/chrome/manifest.json index 108f9a7..6926b3c 100644 --- a/chrome/manifest.json +++ b/chrome/manifest.json @@ -44,7 +44,7 @@ "global": true } }, - "version": "2.1.2", + "version": "2.1.3", "options_ui": { "page": "options.htm", "chrome_style": true diff --git a/common/js/anesidora.js b/common/js/anesidora.js index b0ab873..446bb10 100644 --- a/common/js/anesidora.js +++ b/common/js/anesidora.js @@ -164,6 +164,8 @@ async function userLogin(response) { return "uncool credentials"; } + dontRetryPartnerLogin = false; + userAuthToken = res.result.userAuthToken; userId = res.result.userId; if (stationList.length == 0) { diff --git a/common/js/background.js b/common/js/background.js index 8ab1271..cb49dc4 100644 --- a/common/js/background.js +++ b/common/js/background.js @@ -16,10 +16,8 @@ get_browser().webRequest.onBeforeSendHeaders.addListener( }, { urls: [ - "http://*.pandora.com/*", - "https://*.pandora.com/*", - "http://*.p-cdn.com/*", - "http://*.p-cdn.us/*" + "http://*.pandora.com/services/json/*", + "https://*.pandora.com/services/json/*", ] }, ['blocking', 'requestHeaders'] @@ -152,7 +150,13 @@ async function nextSong(depth=1, prev_station=undefined) { xhr2.send(null); } - callbacks.updatePlayer.forEach(e => { try{e && e()}catch(b){}}); + background.callbacks.updatePlayer.forEach((e) => { + try { + e(); + } catch(b) { + background.callbacks.updatePlayer.splice(background.callbacks.updatePlayer.indexOf(e), 1); + } + }); }; xhr.send(); } @@ -191,8 +195,14 @@ document.addEventListener('DOMContentLoaded', function () { mp3Player.addEventListener("play", function () { try { //check if the window exists - document.getElementById('mp3Player').yep = 'thisexists' - callbacks.updatePlayer.forEach(e => { try{e && e()}catch(b){}}); + document.getElementById('mp3Player').yep = 'thisexists' + background.callbacks.updatePlayer.forEach((e) => { + try { + e(); + } catch(b) { + background.callbacks.updatePlayer.splice(background.callbacks.updatePlayer.indexOf(e), 1); + } + }); currentSong.startTime = Math.round(new Date().getTime() / 1000); } catch (e) { //if it doesn"t exist, don"t draw here @@ -206,7 +216,13 @@ document.addEventListener('DOMContentLoaded', function () { try { //check if the window exists document.getElementById('mp3Player').yep = 'thisexists' - callbacks.drawPlayer.forEach(e => { e && e()}); + background.callbacks.drawPlayer.forEach((e) => { + try { + e(); + } catch(b) { + background.callbacks.drawPlayer.splice(background.callbacks.drawPlayer.indexOf(e), 1); + } + }); } catch(e){ //if it doesn"t, don"t draw here return; diff --git a/common/js/newpopup.js b/common/js/newpopup.js index 92cfe74..7cbf434 100644 --- a/common/js/newpopup.js +++ b/common/js/newpopup.js @@ -447,20 +447,22 @@ document.addEventListener('DOMContentLoaded', async function () { unWarning.style.display = 'none'; pwWarning.style.display = 'none'; - login.addEventListener("submit", async function () { - localStorage.username = unInput.value; - localStorage.password = pwInput.value; - await background.partnerLogin(); - if (background.userAuthToken === "") { - document.getElementById("li1").classList.add("warning"); - document.getElementById("li2").classList.add("warning"); - return false; - } else { - await addStations(); - //move to mid panel - goToStations(); - return false; - } + login.addEventListener("submit", function (e) { + (async() => { + localStorage.username = unInput.value; + localStorage.password = pwInput.value; + await background.partnerLogin(); + if (background.userAuthToken === "") { + document.getElementById("li1").classList.add("warning"); + document.getElementById("li2").classList.add("warning"); + } else { + await addStations(); + //move to mid panel + goToStations(); + } + })(); + e.preventDefault(); + return false; }); ['keypress', 'change', 'input', 'paste'].forEach(e => { diff --git a/common/js/oldpopup.js b/common/js/oldpopup.js index 1820e04..7070b93 100644 --- a/common/js/oldpopup.js +++ b/common/js/oldpopup.js @@ -358,28 +358,30 @@ $(document).ready(async function () { }); $("#unWarning").hide(); $("#pwWarning").hide(); - $("#login").bind("submit", async function () { - localStorage.username = $("#username").val(); - localStorage.password = $("#password").val(); - await background.partnerLogin(); - if (background.userAuthToken === "") { - $("#unWarning").show(); - $("#pwWarning").show(); - $("#username").css({ - "padding-left": "16px", - "width": "216px" - }); - $("#password").css({ - "padding-left": "16px", - "width": "216px" - }); - return false; - } else { - addStations(); - //move to mid panel - goToStations(); - return false; - } + $("#login").bind("submit", function (e) { + (async() => { + localStorage.username = $("#username").val(); + localStorage.password = $("#password").val(); + await background.partnerLogin(); + if (background.userAuthToken === "") { + $("#unWarning").show(); + $("#pwWarning").show(); + $("#username").css({ + "padding-left": "16px", + "width": "216px" + }); + $("#password").css({ + "padding-left": "16px", + "width": "216px" + }); + } else { + addStations(); + //move to mid panel + goToStations(); + } + })(); + e.preventDefault(); + return false; }); $("#stationFilterInput").bind("keypress change input paste", () => { diff --git a/firefox/manifest.json b/firefox/manifest.json index 4fb2b08..b3425ec 100644 --- a/firefox/manifest.json +++ b/firefox/manifest.json @@ -46,7 +46,7 @@ "description": "Skip to the next song" } }, - "version": "2.1.2", + "version": "2.1.3", "options_ui": { "page": "options.htm", "browser_style": true